Multilayered method and apparatus to facilitate the accurate calculation of freight density, area, and classification and provide recommendations to optimize shipping efficiency

ABSTRACT

Systems and methods provide real-time shipping optimization recommendations for reducing the cost of shipping freight units in a shipment. System comprises a measurement system in communication with a computer system that comprises a client computer device in communication with a host computer system. The measurement system comprises multiple sensing devices to determine weight, dimensions, and other shipping parameters of the freight units in the shipment. The computer system computes a current shipping cost and density based on the shipping parameters. The computer system determines shipping recommendations including recommended adjustments to the shipping parameters that reduce the current shipping cost. The shipping recommendations are transmitted to the client computer device prior to loading the shipment onto a carrier vehicle for the shipment.

PRIORITY CLAIM

The present application is a continuation of U.S. application Ser. No.16/379,936, filed Apr. 10, 2019, now U.S. Pat. No. 11,379,788, issuedJul. 5, 2022, which claims priority to U.S. provisional patentapplication Ser. No. 62/743,185, filed Oct. 9, 2018, with the same titleand inventors as indicated above, and which is incorporated herein byreference in its entirety.

BACKGROUND

Freight carriers shipping freight units use pricing rules that considershipment characteristics such as density, linear footage, and volume.Some shippers use generic rating systems that provide pricing formultiple carriers based only on the total weight and class of theshipment without accounting for the shipment density or dimensions orother rules that are less common or very obscure but cause a shipper toincur expensive surcharges. Accounting for the shipment density ordimensions can be used to reduce the cost of shipping freight units.

The freight industry is continuing to move to a specific pricing modelfor density-based freight, where the product type, as well as thedimensions and weight of the freight units, significantly impact theshipment costs. Accuracy of the dimensions is critical to properlycalculate the cost in a density-based pricing model.

SUMMARY

In one general aspect, the present invention is directed to asensor-based dimensionalizer system to determine the weight, dimensions,and other shipping parameters of freight units to be shipped in ashipping container or carrier vehicle by a freight carrier. The systemalso preferably comprises a computer-based recommendation engine thatrecommends adjustments to the weight and/or dimensions of a freightunit, or a group of freight units to be shipped, in order toadvantageously affect the cost of shipping the freight unit(s). Therecommended adjustments may be received or otherwise provided on aclient computer device.

In another general aspect, the present invention is directed to a systemcomprising: a measurement system for determining shipping parameters ofa shipment and a computer system that is in communication with themeasurement system. The shipment comprises one or more freight units;each of the one or more freight units comprises one or more goods; theshipping parameters comprise a weight, height, width, and depth for eachof the one or more freight units; and the measurement system comprises adepth camera, a scale, and a rangefinder. Range data from therangefinder are used to calibrate the depth camera. The computer systemcomprises a client computer device; and a host computer system that isin communication with the client computer device. The computer system isconfigured to: compute a density for each of the one or more freightunits in the shipment based on the shipping parameters; compute ashipping cost for shipping the shipment with a freight carrier based oncarrier-specific pricing rules for the freight carrier, whereincomputing the shipping cost for the freight carrier comprisesdetermining, based on the carrier-specific pricing rules for the freightcarrier, whether the freight carrier would designate the shipment asdensity-based or class-based for purposes of determining the shippingcost; determine, by the host computer system, an adjustment to theshipping parameters for the shipment that reduces the shipping cost bychanging the density of the one or more freight units, wherein theadjustment comprises an increase in weight, height, width and/or depthof the one or more freight units; and transmit, by the host computersystem to the client computer device, data about the adjustment prior toloading the shipment onto a carrier vehicle.

In yet another general aspect, the present invention is directed to amethod comprising: determining, with a measurement system, shippingparameters for a shipment that comprises one or more freight unit;computing, by a computer system that comprises a host computer systemand a client computer device, a density for each of the one or morefreight units in the shipment based on the shipping parameters;computing, by the computer system, a shipping cost for shipping theshipment with a freight carrier based on carrier-specific pricing rulesfor the freight carrier; determining, by the computer system, anadjustment to the shipping parameters for the shipment that reduces theshipping cost by changing the density of the one or more freight units;and transmitting, by the computer system to the client computer device,data about the adjustment prior to loading the shipment onto a carriervehicle. Each of the one or more freight units comprises one or moregoods; the shipping parameters comprise a weight, height, width, anddepth for each of the one or more freight units; and the measurementsystem comprises a depth camera, a scale, and a rangefinder. Range datafrom the rangefinder are used to calibrate the depth camera. Computingthe shipping cost for the freight carrier comprises determining, basedon the carrier-specific pricing rules for the freight carrier, whetherthe freight carrier would designate the shipment as density-based orclass-based for purposes of determining the shipping cost. Thedetermined adjustment comprises an increase in weight, height, widthand/or depth of the one or more freight units.

These and other benefits of the present invention are apparent from thedescription herein.

FIGURES

Various embodiments of the present invention are described herein by wayof example in connection with the following figures, wherein:

FIG. 1 is a top view of the sensing devices in the measurement systemused to determine the dimensional and other shipping parameters of afreight unit in a shipment, according to various embodiments of thepresent invention.

FIG. 2 shows a mobile computing device that may be used in thedimensioning process, according to various embodiments of the presentinvention.

FIG. 3 shows a screenshot of a mobile computing device with a displayincluding a dimensionalize icon, select BOL input field and a shipmentname input field; two sample selected BOLs, and a product informationscreen, according to various embodiments of the present invention.

FIG. 4 shows a visualization of a freight unit generated by the freightunit image processing component according to various embodiments of thepresent invention.

FIG. 5 illustrates a graphical user interface (GUI) for creating orupdating a BOL, according to various embodiments of the presentinvention.

FIG. 6 is a schematic that shows the sensing devices mounted on anoverhead mounting frame, according to various embodiments of the presentinvention.

FIG. 7 is a diagram of the dimensionalizer system, according to variousembodiments of the present invention.

FIG. 8 shows a simplified view of the sensing devices, according tovarious embodiments of the present invention.

FIG. 9 shows a diagram of a plurality of optical sources for use incamera alignment/registration, according to various embodiments of thepresent invention.

DESCRIPTION

The present invention is directed to, in one general aspect, a system toaccurately measure the dimensions, weight, area and volume of freightunits to be shipped, and to provide dynamic recommendations on how toadjust the shipping parameters (e.g., dimensions) of the freight unitsto positively affect the packaging, shipping, and other costs associatedwith shipping the freight units. The dynamic recommendations could beprovided as marginal suggestions. For example, the system may recommendincreasing the weight of a freight unit by x pounds, while onlyincreasing the volume of the freight unit by y amount or less, to save zdollars. The z dollars of savings could be calculated based on a ratecalculator that uses carrier-specific pricing rules to determine thecost of shipping. Because different carriers might use different pricingrules to determine the total price of transporting or shipping ashipment, the system may also determine when and how much cost to shipthe shipment could be reduced by selecting a different carrier for thatparticular shipment. In this way, the dynamic recommendations of thesystem may comprise recommended adjustments to the shipping parametersof the shipment and/or freight units in the shipment. The adjustedshipping configuration (e.g., increasing the density of one or morefreight units in the shipment) could correspond to a cheaper cost forshipping as calculated based on the applicable carrier specific pricingrule. Such rules may be broadly classified as density-based orclass-based rules. The adjustment may also result in a transition inshipping cost/pricing rules, such as the change in shipping parametersresulting in changing the rules to deem the shipment as subject todensity-based rules rather than class-based rules. Preferably, thesystem should determine the adjustment prior to loading the shipmentonto a carrier vehicle, so that the user may realize the savings of theadjustment. Carrier vehicles may be box cars, trucks, ships, trains,airplanes, or some other suitable carrier vehicle as desired.

The dimensionalizer system may comprise a measurement system andcomputer system. More specifically, the system could use an arrangementof sensing devices, which may constitute a measurement system fordetermining shipping parameters of a shipment. As used herein, ashipment comprises one or more freight units, in which each freight unitcomprises one or more goods. The goods could be positioned on top of oneor more pallets, if desired. The shipment parameters include dimensionalparameters such as weight, height, width, and depth for the freightunits. The sensing devices may include depth cameras, rangefinders, anda scale, or some combination or subcombination thereof. The scale couldbe co-located at the freight site where the shipment is located, or thescale could be located remotely. The range sensors may be varioussuitable rangefinders such as optical and acoustic rangefinders. Opticalrangefinders might include diode lasers, laser emitting diodes (LEDs),lasers, or some other suitable optical energy device. Acousticrangefinders may be ultrasound range sensors or some other suitableacoustic range device. The rangefinders may be used for improving thedetermination of the physical characteristics/parameters (shippingparameters) of the freight units as described below.

In particular, the sensing devices can be used to calculate thedimensions of the freight units in the shipment in order to providereal-time feedback on freight to optimize shipments. The sensing devicesmay obtain calibrated and aligned measurements to determine the shippingparameters, as discussed in more detail below. Thus, the sensing devicesoperate as part of the measurement system of the dimensionalizer system.The real-time feedback may be received and handled by a computer systemin communication with the measurement system. This computer system mightcomprise a client component (e.g., client computer device such as amobile smartphone) and a host component (e.g., host computer system).The feedback may comprise adjustments in the shipping parameters of ashipment that may beneficially reduce the cost of transporting/shippingthe shipment. For example, the system may determine that changing, suchas increasing, the density of the freight units in the shipment couldreduce the overall shipping cost of shipping the shipment. To elaboratefurther, after computing the density of the freight units in theshipment, the computer system use applicable shipment/freight carrierspecific pricing rules to determine the estimated shipping cost. Theapplicable rules could correspond to one or more different carriers,which in turn could be determined based on a client profile in adatabase of the dimensionalizer system. For instance, the client profilemay specify the carriers that the client is willing to use to shipshipments.

Accordingly, when the adjustment comprises a recommendation to increasethe density of the freight units, the host computer system coulddetermine that an increase in one or more of weight, height, width anddepth (or a change in some other shipping parameter, such as the type ofproduct in the freight unit) to increase the density of one or morefreight units is desirable and thus transmit this recommendation to theclient computer device. The client computer device could display thisadjustment or recommendation such that the client understands theexisting recommended adjustments to shipping parameters, freight units,and shipments. As discussed above, if desirable, the freight units maycomprise one or more pallets having one or more products/goods thereon.The multiple sensors of the measurement system may work in conjunctionto determine multiple physical parameters of the freight unit, includingthe density, weight, height, length, width, area, pounds per cubic foot(PCF), product class and sub-classes. Collectively, these and othersuitable parameters may be referenced as shipment parameters of thefreight unit and/or shipment associated with the freight unit. Beforethe depth cameras and rangefinders initially begin acquiring data tomeasure and determine the shipping parameters, automated automaticregistration, alignment, and calibration may occur. Such registration,alignment, and calibration can also occur throughout the measuringprocess. Each of the depth cameras, rangefinders and scales may becoupled to a processor (e.g., microprocessor, controller, fieldprogrammable gate array, digital signal processor) for processing theacquired data, to determine the shipping parameters, for example. Inturn, the processor may be coupled to a memory device (e.g., RAM, ROM)for storing the acquired data.

The system may also include mobile devices (such as laptops, tablets,smartphones, body-wearable devices) for providing a freight managementsystem with a corresponding user interface. In this connection, theclient computer device may be a mobile device with a corresponding userinterface. For example, the user interface could be provided by adisplay of the client computer device in order to display an annotatedvisualization of freight units, in which the annotated visualizationindicates a confidence level of the determined shipping parameters. Theannotated visualization could be displayed based on images and datacaptured by a depth camera. The images and data could be calibrated,refined, and registered using the rangefinders. In general, the dataused to populate the corresponding user interface may be received fromthe processor coupled to the sensing devices. The provided freightmanagement system (FMS) may be remote from the sensing devices invarious embodiments. That is, the computer system communicativelycoupled to the measurement system may be remote from the freight site ofthe shipment. Thus, the sensing devices can be located at the samelocation as the freight unit to be measured. The processor coupled tothe sensing devices may transmit acquired data and measure shippingparameters of the shipment to the remote FMS, which may be part of thecomputer system or host computer system. To this end, the processor mayconstitute or be part of a local work station provided at the freightunit/shipment site to communicate with the FMS. The local work stationmay act as a local hub for communicating with the remote FMS via asuitable application programming interface (API). In other words, thelocal work station can route requests between the sensing devices andthe remote FMS, which may be part of the computer system or hostcomputer system.

The measurement, data, and determined shipping parameters are useful forstorage and tracking of the freight units/shipment. Additionally, theremote FMS may be able to provide real-time recommendations regardingthe freight unit configuration. In particular, the remote FMS mayrecommend different freight types (e.g., different classes of products)and standard inventory to be included in freight units as well as otheradjustments to determined shipping parameters, in order to optimize theshipment of the freight units. For example, the remote FMS couldrecommend changing the density (which could be the total density of theshipment or individual density of a subset of freight units and can bemeasurable in pounds per square foot (PSF)), or reducing the number offreight units in a shipment from 4 pallets to 3 pallets for example,and/or adding sand (or some other dense, cheap material) to one or morefreight units in the shipment in order to increase the correspondingdensity, which may reduce the overall shipping cost under thecorresponding density-based rules used to determine shipping rate. Insome situations, the recommended adjustment may be sufficient to triggera different pricing rule. That is, the recommended adjustment mightcause the corresponding carrier to switch from a class-based to adensity-based pricing rule. Preferably, under the applicable pricingrule, the total shipping cost of shipping the shipment after theadjustment is lower than prior to the adjustment.

In sum, the dimensionalizer system comprises a layered technologyframework that captures freight weight, dimensions, and other shippingparameters accurately. In this way, human error or manual interventioncan be minimized and freight can be appropriately classified (e.g.,under applicable shipping carrier classifications) so as to avoidunexpected freight charges. This precise and accurate information (e.g.,capturing the images and dimensions of the freight units in theshipment) may be transmitted to the FMS, which can make recommendationson cost effective shipping alternatives for the corresponding class offreight. Dynamic recommendations may be provided based on freight siteprofiles. The freight site profiles could specify various preferences ofthe client seeking to ship the shipment. For example, the preferencescould include: two different products/goods should generally be includedin the same freight unit or shipment, a shipment should generallyinclude x number of freight units, one or more particular carriers arepreferred carriers with preferable client specific pricing rules, orother suitable preferences. The client/freight site profiles may bestored as database profiles in a database of the dimensionalizer system.The database may be maintained by one or more of the processor, localwork station, or computer system. Specific on-site clientshipment/freight unit information such as particular shipment type andadditional shipment bandwidth, including both supply and distributionneeds, may be incorporated so that customized dynamic adjustments orrecommendations are generated according to the relevant databaseprofile. Information from the dimensionalizer system can be used forreal-time recommendations to optimize the shipping decision makingprocess, including maximizing efficiency and minimizing cost. In thisway, the computer system can provide live feedback and recommendationson the shipment.

The combination of multiple sensing devices/platforms and equipment inthe measurement system may be beneficial for achieving greater accuracy.That is, the combination of depth cameras, rangefinders (e.g, laserdiode and ultrasound), and scales obtains accurate measurements.Additionally or alternatively, the sensing devices monitor equipmentoperation and status states. For example, the sensing devices, inconjunction with the computer system, can determine when the shippingparameters are determined, when the freight units of the shipment areloaded into the carrier vehicle, and an error status of systemcomponents. Freight units can have a class according to a freightclassification such as the National Motor Freight Classification (NMFC)or some other shipping carrier specific classification, which mayinclude density-based classes. Accurately determining the NMFC ofproducts and/or freight units is critical to proper classification andpricing of a shipment. If freight falls under a density-based NMFC, itis critical that the freight is accurately measured and weighted. Themeasurements from the multiple sensing devices can ensure accuratepricing is obtained by applying the appropriate sub-class within theNMFC. As a result, real-time decisions can be made on shipment capacity,options, shipment configuration, and pricing. This real-time support maybe provided prior to shipping the shipment. The dimensionalizer systemmay avoid manual calculation of dimensional weight, which can be timeconsuming and error prone. Errors in calculated dimensions could causeadditional carrier charges if reclassification occurs.

Therefore, the present invention relates to the use of sensing devicesand a computer system to accurately measure the dimensions, weight,area, volume, and other shipping parameters of freight units andassociated shipments in order to provide dynamic recommendations. Suchrecommendations include how to effectively maximize the amount ofpackaging in a shipment as well as minimizing the shipping and othercosts associated with transporting the shipment of freight units.

FIG. 1 is a top view 100 of the sensing devices in the measurementsystem used to determine the dimensional and other shipping parametersof a freight unit in a shipment, according to various embodiments of thepresent invention. The system may also comprise a scale to measure theweight of a freight unit, as described in further detail below. Thisscale could be at the same or remote location relative to the freightunit. As shown in FIG. 1, the sensing devices may include a plurality ofdepth cameras 102A-102E and range sensors. The range sensors maycomprise suitable rangefinders such as optical and/or acousticrangefinders. The optical rangefinder 104 could be a laser dioderangefinder while the acoustic rangefinder could be an ultrasoundrangefinder 106. The depth cameras 102A-102E are designed to captureboth video and photos of the freight units being measured. Upondetermining the measurements and shipping parameters, the system mayannotate the photos of the freight units with the measurements andshipping parameters. The client computer device may display this as anannotated visualization on its display and the annotated visualizationcould indicate a confidence level of the measurements and shippingparameters. Although FIG. 1 depicts only optical rangefinder 104 and oneacoustic rangefinder 106, more than one optical rangefinder 104 and morethan one acoustic rangefinder 106 could be included as sensing devices.The sensing devices can be mounted on an overhead frame 604, such asshown in FIG. 6. The overhead frame 604 may function as a mountingmechanism for the sensing devices of the measurement system.

The overhead mounting frame 604 is supported by multiple (e.g., 4)vertical support beams 608A-608D. The plurality of overhead supportbeams may define a space underneath. In this space, one or multiplefreight units of a shipment may reside for measurement. If the space issufficiently large, a carrier vehicle may be positioned within the spaceif desired as well. Also, the scale could be placed at the bottomportion of the space (ground surface) so that the freight unit(s)resides on top of the scale for measuring when the system is active. Theoverhead frame 604 may include a central bar 606 on which the centraldepth camera 102E, optical rangefinder 104 and ultrasound rangefinder106 are mounted. As such, the sensing devices may be organized in a“pavilion” configuration. The sensing devices may be aligned on theinnermost section of the overhead frame 604. Based on this overheadframe 604, each of the devices may be aligned overhead of the groundsurface on which the freight unit 602 is placed. For example, thesensing devices may be at a suitable height relative to the groundsurface, such as 9-11 feet.

In one embodiment, the sensing devices are all at the same height level.The freight unit 602 to be measured is placed on the ground surfaceunder the central depth camera 102E and within the field of view of thesurrounding cameras 102A-D. In this way, each of the depth cameras102A-102E may be downward facing or pointing cameras and mounted on asupport beam 608A-608D such that the freight unit 602 is within thefield of view of each camera 102A-102E. The scale could be located inthe same location where the freight unit 602 is placed under theoverhead camera 102E, or the scale could be located remotely from theframe 604. The freight unit 602 may be weighed before or after the otherdimensions and shipping parameters of the freight unit 602 aremeasured/determined. The overhead frame 604 may be shaped as a cube orany other suitable shape. The various sensing devices should be arrangedon the frame 604 so that they do not block each other's view of thefreight unit 602.

A freight unit 602 may be loaded on a scale (not shown in FIG. 6)beneath overhead depth cameras 102A-102E, optical rangefinder 104 andultrasound rangefinder 106 and in the space defined underneath thesupport beams 608A-608D. As shown in FIG. 1, the depth cameras 102A-102Eare mounted in the center and on each side of the overhead frame 604.The five depth cameras 102A-102E are used to measure, photograph, andtake videos of the freight units/shipment. The side depth cameras102A-102D may be positioned at 90 degrees intervals around the freightunit 602. In this way, the center depth camera 102E may be locateddirectly overhead of the scale while the side depth cameras 102A-102Dmay each be located on a different side of the scale. Also, the sidedepth cameras 102A-102D may each be an equal distance apart from thecenter depth camera 102E. The optical rangefinder 104 and ultrasoundrangefinder 106 may be mounted on overhead frame 604 adjacent to thecentral overhead camera 102E to measure the height of the freight unit602. All measurements from the sensing devices are obtained and used inconjunction to determine a more accurate measurement. The opticalrangefinder 104 and ultrasound rangefinder 106 may be used to monitorthe status and accuracy of the cameras 102A-102E and the state of theprocesses. Weight can be obtained from the scale and transmitted viaserial communications to the local work station 706 (see FIG. 7) of thedimensionalizer system. The local work station 706 is communicativelycoupled to the scale (e.g., via an application programming interface)and may initiate a request to the scale for the weight. The local workstation 706 acts as a local communication server between the localdevices (e.g., measurement system, client computer device) and theremote systems (e.g., host computer system).

The local work station 706 may comprise two components, including a TCPconnection and a listening TCP server. The TCP connection establishesand enables a shared pointer. The TCP connection can be kept alive viashared pointer. Initialization of the communication between localdevices (e.g., mobile computer device) and remote systems (e.g., FMS) toa client may be achieved via a port. A socket can be created and used toinitiate an asynchronous accept operation to wait for a new connection.Subsequently, a block of data may be sent to the client, which theclient receives asynchronously. The TCP server is programmed to keep theTCP connection alive via shared pointer. In addition, the TCP server caninitialize an acceptor to listen on a TCP port. Thus, the asynchronousaccept operation is initiated, the client request is then serviced, andthe system prepares for the next operation. The data may be served tothe client via asynchronous operations that provide the arguments in thehandler parameter list and prepares the data for the client such as theclient computer device.

The dimensionalizer system may comprise numerous major hardware andsoftware components such as: a weighing component, a dimensioningcomponent, applications running on a mobile device (e.g., a tablet andmobile phone), a freight unit image processing component, an ApplicationProgramming Interface (API), a registration component, and a databaseprofile component. The weighing component may obtain the weightelectronically via serial port from a standard scale 704 (e.g., aNational Type Evaluation Program (NTEP) scale), which is shown in FIG.7. The dimensioning component comprises the multiple sensing devices(e.g., depth cameras and rangefinders), which are used to calculate thedimensions of the freight unit 602, including height, length and width.The dimensioning component could also be referred to as the measurementsystem. In particular, the measurements obtained from depth cameras102A-102E may be refined with the range data from the opticalrangefinder 104, and further refined with the range data from ultrasoundrangefinder 106 to obtain more accurate measurements. When no freightunits 602 are located on the scale, a calibration function of the systemmay be triggered. That is, the scale 704 can be zeroed or normalized sothat the weighing component may obtain accurate weight measurements.

The mobile device applications may be used to capture bill of lading(BOL) and freight information from a subject freight unit 602, such asby controlling a code reading component of the corresponding clientmobile device. As discussed above, the client computer device is notlimited to mobile devices. A subject freight unit 602 may have a QRcode, bar code, or some other suitable optical machine readable codestoring freight characteristics and other freight information such asfreight unit class and identifying information. Accordingly, the mobiledevice may comprise a QR or bar code reader, etc. to read thisinformation. Also, the mobile device could capture this information viamanual entry. The client mobile/computer device may execute anapplication to capture BOL information using a means such as one of theapproaches discussed above. Upon capture of the BOL information, theclient computer device may trigger the measurement system to determinethe shipping parameters of the shipment, such as by transmitting asignal to activate the sensing devices. The function of the clientdevice is described in more detail below with reference to FIG. 2. Thefreight unit image processing component is described in more detailbelow with reference to FIG. 4. The API may be used to create a BOL orupdate an exiting BOL. Also, the API is usable to transmit themeasurements and/or shipping parameters, including length, width,height, and weight, to the remote FMS 710. The API could also transmitthe images or other visualizations of the freight unit 602 (e.g., shownin FIG. 4) to the FMS, which may be advantageous for insurance claims.The registration component registers, aligns, and calibrates the outputof the sensing devices, as discussed in further detail with reference toFIG. 7.

The database profile component stores client/freight site profiles,which may specify information such as corresponding freight sitecharacteristics, shipping and client preferences, freight metrics, andother information for dynamically determining recommended adjustments bythe computer system. Each profile in the database may describe clientproduct inventory and freight metrics. The inventory information andfreight metrics are received and analyzed by the FMS when thecorresponding bar code (or other identifying data) of the freight unitis scanned (or otherwise input). Freight metrics may include productclass, sub-classes, and applicable pricing rule information for thegoods/products that comprise the freight unit 602. Freight metrics mayalso include estimates or preferential ranges of shipping parametervalues such as density, weight, height, length, width, area, and poundsper cubic foot. The FMS or dimensionalizer system can use the scanneddata from the client profiles in the database to make real-time costsavings recommendations on the shipment. In particular, present andhistorical information can be used to calculate the costs of shipmentand lost savings (e.g, opportunity cost) based on the freight class.This prospective recommendation provides real-time recommendation basedon the current shipment and previous shipments. The computer system maydetermine adjustments to shipping parameters to provide a dynamicprofile of client options for freight shipment. The dynamicallydetermined adjustments/recommendations can change over time to track thereal-time status of the efficiency and costs of the distribution andshipment.

FIG. 2 shows a mobile computing device 200 that may be used in thedimensioning process, according to various embodiments of the presentinvention. The mobile computing device 200 may be a mobile phone (e.g.,an iPhone or Android device), tablet (e.g., iPad), or some othersuitable handheld computing device, including a laptop computer. Themobile computing device 200 is an example of a client computer device ofthe system, as discussed above. More than one mobile computer device 200can be provided when appropriate or desired. The mobile computing devicemay send a trigger to the sensing devices 708 to start the dimensioningprocess. The process includes taking photos from the top and four sideangles of the freight unit 702 by the depth cameras 102A-102E.Simultaneously, the optical rangefinder 104 and ultrasound rangefinder106 may take measurements (e.g, of distance) for determining shippingparameters such as length, width and height of the freight unit 602 (seeFIG. 6) while, before, or after the weight of the freight unit 602 ismeasured using the NTEP scale 704. As shown in FIG. 2, the dimensioningprocess performed by the system may be triggered by a user selecting thedimensionalize icon 202 of a user interface provided by the display ofthe mobile computing device 200. This interface could be renderedaccording to a mobile app executed by the mobile computing device 200.The dimensionalize icon 202 can be a graphical user interface (GUI)button.

Selecting the dimensionalize icon 202 may also result in determining anddisplaying the dimensioning status and completion/error statuses.Statuses could include an indication that the determination of ashipping parameter is complete or that a depth camera 102A ismalfunctioning, for example. The mobile computing device 200 can be usedto trigger the operation of all sensing devices, interfaces, andcommunication (internal and external) of the dimensionalizer system. Tostart the performance of the dimensioning process, the user should inputidentifying information such as BOL number or the name of a shipment. Tothis end, the display of the mobile computing device 200 may include aselect BOL input field 204 and a shipment name input field 206. The usercould type in the relevant BOL number at the select BOL input field 204and shipment name at the shipment name input field 206. Additionally oralternatively, the user could provide the identifying BOL number and/orshipment name by drop down menu or some other suitable user-interfaceselection/input means. Alternatively, as discussed above, the system maycommence the dimensioning process upon capturing, by the client computerdevice, BOL information via an optical or other code such as QR code orbar code. Freight unit specific parameters such as BOL or freight namecould also be obtained by the code.

Moreover, the mobile computing device 200 could use voice control toverbally receive the user's input information. Each display also canhave a stackable toggle button 208 indicating whether the freight unitis stackable. Whether the freight unit is stackable may alter thedetermination, by the computer system, of the recommended adjustment tothe shipping parameters. For example, when a freight unit isnonstackable, this may act as an additional constraint against anotherwise more desirable reconfiguration of the freight units in theshipment carrier vehicle. The mobile computing device 200 communicatesto the local work station 706, e.g. wirelessly (e.g., a WiFi network).Furthermore, the work station 706 can be in communication with thesensing devices 708, the scale 704 and/or the FMS 710 via the API. Thatis, the work station 706 may communicate with the host computer deviceand client computer device via the API. Other parameters associated withan identifying BOL number or shipment name may be freight specificparameters or how the freight can be transported (e.g., maximum densityof freight unit as measured in pounds per cubic feet (PCF), maximumarea, whether the freight unit is stackable).

The shipping parameters such as density (e.g. PCF) and area may becalculated based on the received measurements from the sensing devices.The local work station 706, mobile computing device 200, and/or hostcomputer system may determine shipping parameters such as the dimensionsand density of the freight unit based on the measurements from thesensing devices. In addition, the local work station 706 could beprogrammed to combine point cloud threads from the depth cameras102A-102E in order to determine a composite point cloud for the freightunits in a shipment. The composite point cloud can combine theindividual point cloud threads based on the measurements from therangefinders (e.g., rangefinders could be used to calibrate and alignthe depth cameras 102A-102E so as to determine which point clouds fromwhich depth camera should be used for each particular angle or portionof the 3D model). In this way, the computer system may determine theheight, width, and depth of the freight units in the shipment based onthe composite point cloud.

FIG. 3 shows a screenshot 300 of a mobile computing device 200 with adisplay including a dimensionalize icon 208, select BOL input field 204and a shipment name input field 206; two sample selected BOLs 302 a, 302b, and a product information screen 304, according to variousembodiments of the present invention. The screenshot 300 illustratesshipment name information and freight product information for shipment,which comprises one or more freight units 602. The mobile computingdevice 200 on the left portion of the screenshot 300 is a similar screenas that described in FIG. 2. In the screenshot 300, the display of themobile computing device 200 has a drag-and-drop select BOL input field204 menu GUI icon and a shipment name textual input field 206 GUI icon.Accordingly, the mobile computing device 200 user may choose anassociated BOL of a subject shipment based on using either of the GUIicons 204, 206. In this connection, the sample selected BOL 302 a hasdata fields indicating a BOL number is 123456789, shipper is ABCcompany, consignee is 123 company, and date is Jan. 1, 2018. Thisselected BOL 302 a may when the user drags down the select BOL menu 214to find the desired BOL number.

Similarly, when the user types in the desired shipment name, the mobilecomputing device 200 and/or host computer system may retrieve thecorresponding shipment information and cause the mobile computing device200 to display sample selected BOL 302 b, which indicates shipper is ABCcompany, consignee is 123 company, and date is Jan. 1, 2018. The sampleselected BOLs 302 a, 302 b could function as shipping labels for theshipment. Also, instead of the user inputting or selecting such shipmentinformation, the shipment information could be prepopulated into datafields of the app executed by the mobile computing device 200. The usercan also touch the dimensionalize icon 208 to cause the system todetermine shipping parameters, such as freight unit dimensions andweight. Alternatively, the user can use a voice control functionality ofthe mobile computing device 200 to start the dimensioning process. TheBOLs and shipping labels might be transmitted to and/or stored by hostcomputer system via the API from the mobile computing device 200 whenthe user is inputting the shipment information. Alternatively, theshipment information could be retrieved from the host computer systemvia the API. The API may support the interface to the FMS via APIRESTful calls to create or update a BOL. The product information screen304 may be the screen that appears when Product Information 512 banner(shown in FIG. 5) is expanded. In the product information screen 304,the user may input initial shipping parameter and other freight/productinformation such as stackable nature, dimensions, product type, class,etc.

FIG. 4 shows a visualization 400 of a freight unit 602 generated by thefreight unit image processing component according to various embodimentsof the present invention. The visualization 400 may be generated by thework station 706 based on the images of the freight unit 602 captured bythe depth cameras 102A-102E. In the example of FIG. 4, the visualization400 is the image of the freight unit 602 captured by the overhead depthcamera 102E. This visualization can be annotated to show determinedshipping parameters such as the length and width of the freight unit602, as shown in FIG. 4. Annotated freight parameters also includeheight, weight, PCF and area of the freight unit 602. Also, theannotated visualization could indicate a confidence level (not shown) ofthe determined shipping parameters. The visualization 400 may betransmitted by the work station 706 to, and displayed on, the mobilecomputing device 200 to graphically illustrate the freight unit 602being measured. When the visualization 400 is annotated, details ofvarious shipping parameters are depicted. The measured length, width,height, and weight can be used to calculate the density as measured inPCF and area of the freight unit 602. As shown in FIG. 4, the freightunit/shipping parameters may be displayed on the top right corner 402 ofthe visualization 400. The shipping parameter measurements, photos, andvideo of the freight unit 602 are captured by the sensing devices andtransmitted. The captured data can be transmitted to the mobilecomputing device and be stored, such as in the database profilecomponent. The stored video could be used to optimize workflowefficiency recommendations. The photos of the freight unit 302 may alsobe used for insurance claims as supporting documentation of thecondition of the freight unit 602 before shipping.

Moreover, the visualization 400 may show the weighted value andconfidence value of the measurements by the sensing devices. Asdiscussed above, the photos are captured from the depth cameras102A-102E. The dimensionalizer system may be programmed to capture onevideo file of the freight unit and five photos (from top central camera102E and from each of the four sides corresponding to depth cameras102A-102D). That is, the depth cameras 102A-102E may be programmed tocapture both video and photos and to apply measurements to the photos,such as for annotation. One of the images, such as the overhead cameraimage, or an aggregation of several images, may be obtained andannotated with the measured freight dimensions and/or shippingparameters, as shown in FIG. 4. This information can be critical forprocessing insurance claims. Thus, the freight unit image processingcomponent supports the visual display of the visualization 400 on thedisplay of the mobile computing device 200.

FIG. 5 illustrates the GUI 500 for creating or updating a BOL, accordingto various embodiments of the present invention. The BOL GUI 500 may bedisplayed by the mobile computing device 200 and the data captured by ittransmitted to the work station 706, which communicates with the remoteFMS 710 and/or mobile computing device 200 via the API (e.g., APIRESTful calls) to create or update a BOL. Communication to the API canbe established via an API key, with authentication. This call passes avideo, images, and the parameters associated with the freight/BOL to theTransportation Management System (TMS) 712 shown in FIG. 6. In variousembodiments, the GUI 500 can be a web page served by a web server 702 toa customer or client such as on the mobile computing device 200 display,so that the client user can input parameter values for shipping afreight unit 602, view shipping rates for various shipping carriers ascomputed by the FMS, select a desired carrier based on displayed rates,and perform other desired functions relevant to shipping the shipment.The web server 702 may be in communication with the remote FMS 710. Theweb page could be displayed by the mobile computing device 200 or anyother suitable mobile, desktop, or other client computer device that canaccess the web server 702 via the Internet or other suitable network. Asshown in FIG. 5, the BOL entry screen has multiple banners includingLoad Entry 502, General Information 504, Shipper Information 506,Consignee information 508, 3rd Party Billing Information 510, ProductInformation 512, Carrier Selection 514, Special Information 516, andUpload Files 518.

The banners may be collapsible and expandable according to the user'spreferences. Under the Load Entry 502 banner, history information, BOLidentification number and the status of the loaded BOL may be displayedin a text field. Additionally or alternatively, this information may beselectable via a GUI user input means such as a text box, drop downmenu, or other GUI icon for the user to input the corresponding data.The other banners General Information 504, Shipper Information 506,Consignee information 508, 3rd Party Billing Information 510, andProduct Information 512 are expandable but shown as collapsed in FIG. 5.Carrier Selection 514 includes a least cost carrier (LCC) option and amanual option. Files such as the videos or photos described withreference to the visualization 400 in FIG. 4 could be uploaded via dragand drop, for example, in the image upload component 520 under theUpload Files 518 banner. Different orientations of the visualization 400are selectable and other suitable videos and photos can also beuploaded. The BOL GUI 500 may be rendered on the display of the mobilecomputing device 200. More details regarding the BOL GUI 500 can befound in U.S. Pat. No. 9,747,578, issued Aug. 29, 2017 (hereinafter,“the '578 patent”), which is hereby incorporated by reference in itsentirety.

FIG. 6 is a schematic 600 that shows the sensing devices mounted on anoverhead mounting frame 604, according to various embodiments of thepresent invention. As discussed above, the overhead depth cameras102A-102E, the optical rangefinder 104 and the acoustic rangefinder 106(e.g., ultrasound rangefinder 106) may be aligned about the overheadframe 604. That is, all of the sensing device may be at the same heightlevel. Additionally, the rangefinders and overhead downward-pointcentral camera 102E may all be mounted on the central bar 606.Specifically, the rangefinders may be adjacent to the central camera102E such as the optical rangefinder 104 on one side of the centralcamera 102E and the acoustic rangefinder 106 on the other side of thecentral camera 102E, as shown in FIG. 6. The overhead depth cameras102A-102E, capture photos and/or videos of a subject freight unit 602placed under and within the field of view of the cameras. Each of theoverhead depth cameras 102A-102E may function by using point cloudlibrary (PCL) threads (e.g., Intel® RealSense™) such that each depthcamera 102A-102E generates a point cloud thread, for a total of fivethreads across the five cameras 102A-102E. The five threads may bejoined together by threaded pipeline of the work station 706.

To obtain the PCL threads, point clouds may be obtained from each depthcamera 102A-102E. The points of the point clouds are converted to PCL toobtain the width, height, position of the vertices, and the texturecoordinates. The threaded pipeline is used for multithreading each PCLthread. The overhead depth cameras 102A-102E and/or the work station 706may then perform post filtering, point cloud transformation, and PCLpoint cloud filtering on the images collected by the cameras 102A-102E.Based on this processing, the overhead depth cameras 102A-102E and/orwork station 706 can generate a transformed, filtered point cloud. Thetransformed point cloud may be a composite point cloud generated basedon determining which points of the individual point clouds should beincluded in the composite, for example. This process may be facilitatedby using the range data from the rangefinders to calibrate the camerasand determine which camera should be the source of which portions of thecomposite point cloud. The stream depth of the color and depth can bealigned via autoexposure.

The post processing may be initialized to reduce the depth framedensity, perform edge-preserving spatial smoothing, reduce temporalnoise and perform depth to disparity transformation to improve spatialand temporal filtering. The color frame may be aligned to depth frame.Also, the color frame can be mapped to the relevant point cloud. Ingeneral, filtering includes removing unwanted objects in the view of thesensors. At the end of this processing, a video and multiple photos maybe generated and saved for end of processing API transmission. The pointcloud transformation may be processed to the center depth camera 102E.In particular, steps may include: the point cloud is stored into a gridto down-sample based on the leaf size, points are cropped within a box,rotation and translation is performed based on depth quality, and thered green blue (RGB) color frame format is transformed to hue saturationvalue (HSV) format. The points can be filtered according to the colorinformation for a known predetermined exclusion filtering threshold.Subsequently, statistical outliers may be determined by calculating theaverage distance of each point from other points (MeanK). In this way,points outside the standard deviation threshold are removed.

The image from the center camera 102E can be used to project 3D pointsto 2D by removing depth information and normal projection and by usingcamera intrinsics projected from the central camera 102E. The obtainedweight for the freight unit 602 from the scale 704 can be applied to the2D image. The work station 706 may combine the point clouds from allfive cameras 102A-102E to generate a composite point cloud for thefreight unit 602, from which the dimensions and other shippingparameters of the freight unit 602 are determined. In this way, theinitial length, width, height information for the freight units 602 fromthe center camera can be obtained. Subsequently, the dimensionalizersystem may confirm all information from edge cameras 102A-102D tovalidate and correct center measurements. The edge camera data can beused to confirm the central camera 102E measurements. Then, theinformation from the optical and ultrasound rangefinders 104, 106 can beapplied, respectively, for further validation.

The downward facing overhead depth cameras 102A-102E may determine themaximum number of similar iterations to control the processing multipletimes. Transformation validation may be used to check the percentage ofoverlapping surfaces of multiple point clouds. The coordinates of thenumber of overlapping regions may be assessed to determine if thesurfaces of the point cloud are consistent. Coarse alignment may beperformed via descriptor matching. That is, using 3D keypoints, alignedpoints may be extracted from multiple clouds by matching associateddescriptors. The three dimensional (3D) image can be analyzed to findthe corners of the freight unit 602 in the images. Specifically,correspondence rejector surface normals are used to reject points wherenormals exceed a predetermined threshold. Furthermore, points are alsorejected if they are erroneous points that seem similar such that theyare duplicative, for example, or if they seem to be points beyondboundary points. Correspondences can be based on points on the surfaceboundaries. Termination criteria (when iterations stop using defaultconvergence criteria) can be defined as one or more of the following: amaximum number of iterations set, an absolute transformation threshold,and termination when current estimated transformation exceeds all setthresholds. Keypoint descriptors may include: spin image descriptor,best point feature histogram descriptor, shape context 3D descriptor,unique shape context, shot estimation, ransac (random sample consensus)algorithm used to filter outliers for bad descriptor correspondences.

Based on the point clouds and the processing described above, theheight, other dimensions and/or other shipping parameters of the freightunit 602 may be initially determined by the overhead depth cameras102A-102E. The processing described above may be used to achieve acoarse alignment and calibration of the multiple depth cameras102A-102E. As described in further detail below, the optical rangefinder104 (which may measure height of the freight unit but not at theresolution of the depth cameras 102A-102E) may be used for more precisealignment, calibration, and registration of the depth cameras 102A-102E.That is, the optical rangefinder 104 may double check the heightdetermined by the depth cameras 102A-102E via LIDAR (Light Detection andRanging) with pulsed LED and/or laser light. The ultrasound rangefinder106 may be used for a similar function as the optical rangefinder 104,but perform the function based on sonar. An automatic registration,alignment, and calibration of the cameras 102A-102E, the opticalrangefinder 104, and ultrasound rangefinder 106 may occur at startup ofthe dimensionalizer system. This may be performed by the registrationcomponent. Alignment of the depth cameras 102A-102E, optical rangefinder104, and ultrasound rangefinder 106 advantageously may improve theaccuracy of the corresponding measurements. Furthermore, the computersystem may receive a signal from the mobile computer device 200 totrigger measurement by the sensing devices of the measurement system.

The registration component may be used to recognize and test thealignment of all components. The registration component also can assignthe area of most confidence and weighted values for confidence whenapplying the measurements. This determines the scope of view for eachcomponent. In this way, the sensing devices are automatically aligned toaccurately measure the freight. The registration process by theregistration component can also be used to reduce error margins. Forexample, in a panoramic view, the overlap between individual overheaddepth cameras 102A-102E should be hidden. The specific sides and anglesmeasured by the depth cameras 102A-102E can be considered in conjunctionso that the registration component determines which camera is thecorrect or appropriate camera for a particular side or angle. The LIDARand sonar range data outputs from the optical rangefinder 104 andultrasound rangefinder 106, respectively, may be used in thisdetermination.

The optical rangefinder 104, as shown in FIG. 6, may use LIDAR tomeasure distances and other dimensions of the subject freight unit 602.Preferably, between one to four optical rangefinder 104 are provided,but other numbers of optical rangefinder 104 are also possible. Theoptical rangefinder 104 can obtain numerous range data/measurements. Therange data of the optical rangefinder 104 can be used to confirm andrefine the results provided from the depth cameras 102A-102E. Also, theoptical rangefinder 104 can determine the 3D spatial volume of thesubject freight unit 602 and assign a confidence level to theinformation obtained or determined. Furthermore, the ultrasoundrangefinder 106, as shown in FIG. 7, may use sonar to measure distancesand other dimensions of the subject freight unit 602. Preferably,between one to four ultrasound rangefinders 106 are provided, but othernumbers of ultrasound rangefinders 106 are also possible. Thesemeasurements/range data of the ultrasound rangefinders 106 are used toconfirm and refine the results provided by the depth cameras 102A-102Eand optical rangefinder 104. The ultrasound rangefinders 106 candetermine the spatial volume of the freight unit 602 and assign aconfidence level to the information obtained. As discussed above,confidence levels or values can be used in the annotated visualization400. The volume and measurement data and the confidence level can beused in conjunction to obtain more accurate measurements of the freightunit 602.

The dimensionalizer system can be self-monitoring. For example, if thereis a defect or deficiency with an optical rangefinder 104, thedimensionalizer system may self diagnose this issue. Accordingly, thedimensionalizer system may activate or insert standby/backup equipmentand/or identify what component of the malfunctioning optical rangefinder104 needs to be replaced. In this way, the dimensionalizer systemadvantageously is programmed to address such issues without manualintervention. Moreover, the dimensionalizer system may monitor thestatus of all local devices and perform system checks when the system isin an idle mode. The remote monitoring of the dimensionalizer systemalso can include triggering a calibration function. The ultrasoundrangefinder 106 may be used to detect when nothing is on the scale 704so that the calibration function can be triggered. For example, when theultrasound device 106 detects nothing is positioned on the scale 704,the calibration function can be triggered to verify whether the depthcameras 102A-102E are aligned properly (e.g., if the camera angle haschanged). The periodicity of this calibration verification can be someappropriate interval such as every five minutes, every half hour, orsome other suitable time period. The self-monitoring dimensionalizersystem can also constantly check whether communications between variouscomponents of the system are still operating properly.

The real-time freight decision support system database may performself-checks during idle time when nothing is on the scale 704. Theself-checks can be performed according to periodic intervals asdescribed above. The ultrasound rangefinder 106 is able to determinewhen nothing is present on the scale 704 as well as receive confirmationfrom the scale 704 before processing that the weight is at zero. Forexample, the self-checks can be camera distance checks. Specifically,the system may verify that the distance from the floor and camera angleshave not changed in relation to prior checks and/or the initial setupcheck. The self-checks can also include verifying that communicationsbetween various components of the system is operational and that thesensing devices are mounted at the appropriate location. Also, theself-checks can include automatic calibration.

FIG. 7 is a diagram of the dimensionalizer system 700 according tovarious embodiments of the present invention. As shown in FIG. 7, themobile computing device 200 and the scale 704 (weighing component) areboth communicatively coupled to the local work station 706. The localwork station 706 may execute software for communicating and transmittinginformation to a remote component of the system such as remote freightmanagement system (FMS) 710. In this way, the local work station 706 isa local hub for the dimensionalizer system. Communication between thelocal work station 706 and remote FMS 710 occurs via an API coordinatedby the local work station 706. The local work station 706 may receiveall outputs from the sensing devices and calculate measurements based onthe outputs while considering confidence levels and weighted values. Thelocal work station 706 may transmit a variety of outbound information,which may include: (1) parameters, triggers, and status from the mobilecomputing device 200; (2) weight from the scale 704; and (3)measurements, confidence level, and weighed value from the sensingdevices 708. Also, the local work station 706 can provide live feedbackand shipment optimization recommendations from the remote FMS. Asdiscussed above, the sensing devices 708 comprise overhead depth cameras102A-102E, optical rangefinder 104 and ultrasound rangefinder 106. Theremote FMS 710 may obtain freight information from the transportationmanagement system (TMS) database 712, which may enable the FMS 710 tostore and track the freight.

The real-time freight decision support system 714 supports the remoteFMS 710 in making real-time recommendations on the optimization ofshipments based on freight type and standard inventory. Therecommendations may be based on local optimization or globaloptimization. Local optimization refers to optimization of a particularfreight unit or shipping container while global optimization refers tooptimization of a shipper's total or aggregate product to be shipped. Inglobal optimization, the total number of freight units in a shipment maybe considered to lower the cost of shipping the shipment. For example,the computer system may recommend changing the number of freight unitsin a shipment while considering the remaining number of freight units tobe shipped in other shipments so that total cost of shipment may bereduced. Accordingly, the computer system could recommend moving somenumber of freight units from one shipment in a first carrier vehicle toanother shipment in a second carrier vehicle so that the combined ortotal cost of shipping is reduced. More specifically, the computersystem might recommend changing the content of particular freight unitsso that more of the freight units in a particular shipment becomedensity-based or product-class based or so that a particular carriervehicle or entire total shipment receive treatment under a certaincarrier classification for calculating shipping costs. Whether a freightunit or shipment should be adjusted to become density-based orproduct-class based may depend on the associated treatment under theapplicable carrier pricing rules and whether this treatment would resultin reduced shipping costs. In this connection, the computer system mayconsider that various types of density classes are cheaper than otherdifferent density classes and similarly, various types of productclasses are cheaper than other different product classes. Therecommended adjustments may be provided in real-time to the mobilecomputing device 200.

The mobile computing device 200 formats the API response by passing allparameters associated with a new or existing BOL, which may be input bythe user as described above. The parameters may include an indicator forstackable or unstackable freight (impacts the PCF), PRO number, POnumber, BOL number, any reference number or user defined name tofreight, status, warehouse, direction (e.g., outbound/prepaid), customdates, units, products, pieces, type (e.g, Pallet), class, length,width, height, weight, group, nmfc, sub_nmfc, hasmat indicator, un_num.The mobile computing device 200 may accept the BOL from manual dataentry or via scanning of a bar code or QR code. The FMS 710, TMS 712and/or real-time freight decision support system 714 can be part of thecomputer system, such as part of the host computer system. Communicationto the API is established via an API key, with authentication. This callpasses a video, images, and the parameters associated with thefreight/BOL to the TMS 712. Real-time feedback/recommendations forshipping optimization can be sent back to the local system from theFreight Decision Support System 714. Results may be stored in the remotefreight management system 710 for prospective and retrospective analysisand reporting.

As described above, the weight of the freight unit can be obtained fromthe scale 704. The local work station 706 communicates with the scale704 to obtain information via serial communications. The serialcommunication parameters can be initially set before the local workstation 706 connects to the scale 704. A trigger may be sent to thescale 704 to obtain all information from the scale 704 so that weight isparsed from the response. A device container of the system may handlethe camera registration and rangefinder pipelines to control enablementof the cameras. Pipelines can be established for each device operationto support multithreading processes. Thus, measurements are obtainedfrom all sensing devices. Based on confidence level and weighted values,the measurements are applied to achieve more accurate measurements ofall sides and angles. The merging of measurements consists of allmultithreaded processed measurements. Measurements may be cached untilall measurements are available. In general, measurements are obtainedfrom depth cameras 102A-102E. Optical range data are applied to theresults, and then ultrasound range data are applied for a finalrefinement of the measurements. Thus, all measurement and range data inconjunction with associated confidence level may be used to obtainaccurate shipping parameters of the shipment. FIG. 8 shows a simplifiedview 800 of the sensing devices, according to various embodiments of thepresent invention. As can be seen in FIG. 8, the central camera 102E ismounted adjacent to the rangefinders, including optical rangefinder 104and acoustic rangefinder 106. The central camera 102E could be downwardfacing and overhead relative to the freight unit 602 and scale 704underneath the freight unit 602. The side cameras 102A-102D may be on adifferent side of the scale 704 and/or freight unit 602.

A setting component can be predefined to obtain environmentally specificconfigurations via a configuration file. This information may includecamera names converted to placement (e.g., cardinal orientations such asCenter, North, South, East, West), optical rangefinder device name(s),ultrasound rangefinder name(s), authentication parameters, interface APIparameters, camera, optical and ultrasound rangefinder height (which canbe used to confirm measurements accuracy and check for alignment),minimum and maximum constraints, and system thresholds. Tolerance, andthen thresholds can be used to determine what information is needed witheach camera. That is, tolerance thresholds are employable by the systemto determine which individual point cloud thread from the individualdepth cameras 102A-102E should be used in the determination of theshipping parameters. For each dimension: (1) if the change is within aspecific threshold, that transformation variance is ignored; or (2) ifit is greater than the threshold, it is accepted and applied. Thebounding box may then be updated with the additional information. Thebounding box can be used to find length and width information.Orientation may be aligned in order to determine which side is lengthand width, respectively. All variances may be weighted and appliedaccordingly.

Registration with the cameras may be achieved as multiple images arecaptured from each camera 102A-102E with a designated calibration andalignment and light projected from the base below the cameras 102A-102E.To this end, optical sources can be placed underneath the cameras102A-102E, around the location of the scale 704 (if provided). FIG. 9shows a diagram 900 of a plurality of optical sources 902A-9021 (e.g.,laser, LED, laser diode or other suitable optical source) for use incamera alignment/registration, according to various embodiments of thepresent invention. The optical sources 902A-9021 may be located on theground around the scale 704 (assuming that the scale 704 is at thecenter of the sensor structure 600 so that the freight unit 602 isweighed at the same time that its dimensions are captured) such that theoutput from the optical sources 902A-9021 is projected upwards from theground below the depth cameras 102A-102E. In the registration process,filters can be applied for multiple purposes including: transformation;reducing the depth frame density, applying edge-preserving spatialsmoothing, reducing temporal noise, applying disparity transformation,applying camera cloud rotation as required, and computing cloudresolution. Also, a fast bilateral filter could be applied. In this way,calibration and alignment of the depth cameras 102A-102E by thedimensionalizer system can be attained using the optical sources902A-9021.

The registration process can also utilize targets placed in the view ofall cameras 102A-102E. The registration application may return atransform for each of the cameras 102A-102D relative to the center 102E.The local work station 706 can directly initiate the registration to alocal device such as the mobile computing device 200, although othersuitable devices are also possibly used. Alternatively, a VNC (virtualnetwork computing) application is employable. The system canautomatically trigger the registration upon startup (as a selectableoption) or on demand by the client.

In one embodiment, a recommendation engine of the (computer) system mayemploy a rate calculator such as described in the aforementioned andincorporated '578 patent. In particular, the dimensions and weight ofthe freight unit(s) in a shipment, as determined by the dimensionalizersystem described herein, may be input to the rate calculator of thecomputer system. Also, the goods in the shipment, along with theorigination and destination locations for the shipment, all of which maybe known from the QR code or other identifying indicia for the freightunit(s), are also input to the rate calculator computer system. Usingthis data, the rate calculator can calculate the rate for shipping thefreight unit(s) with various carriers, using the carrier-specificshipping rules for the various carriers, as described in the '578patent. The recommendation engine can then make recommendations on howto adjust the shipping parameters of the freight unit and/or shipment inview of the determinations of the rate calculator. For example, if therate calculator determines that the freight unit is priced based ondensity (as opposed to product), and the freight unit is close to beingin a cheaper, high-density class, the recommendation engine canrecommend that density of the freight unit be changed to move it intothe cheaper, high-density class. For example, the recommendation enginemay suggest that adding x pounds, without adding more than y cubicinches to the volume of the freight unit, will save z dollars inshipping costs for the freight unit. The shipper may then add a materialto the freight unit that meets (or exceeds) the suggestions. Forexample, the shipper could add a dense, preferably cheap material, suchas sand, to the freight unit to positively affect the overall density ofthe freight unit (e.g., increase the density) so that the freight unitgets classified to a less expensive shipping class.

For a shipment that has multiple freight units, the recommendationengine could also make recommendations on how to adjust the freightunits to positively affect (decrease) the shipping costs. For example,if some of the freight units in the shipment are density-based and someare product class-based, the recommendation engine could makerecommendations on how to change the goods in the freight units to makemore of them density-based or more of them product-class based,depending on which is less expensive given the carrier's rules. Also,for freight units that are density-based, the recommendation enginecould make recommendations on how to distribute the goods across thefreight units so that more of the freight units are moved into lessexpensive density classes. Still further, the recommendation engine canrecommend changing (e.g., reducing, adding) the number of freight unitsto advantageously affect (i.e., reduce) the shipping costs. In this way,the dynamic profile of each client can indicate the relative efficiencyand costs of various configurations of freight units in real-time, e.g.,at the time of shipping. Feedback generated based on this dynamicprofile may be transmitted and stored by the dimensionalizer system. Therecommendations may be provided to the mobile computing device 200 or toanother Internet-connected computer connected to the web server 702.

In various implementations, the present invention is directed to asystem comprising: a measurement system for determining shippingparameters of a shipment and a computer system that is in communicationwith the measurement system. The shipment comprises one or more freightunits; each of the one or more freight units comprises one or moregoods; the shipping parameters comprise a weight, height, width, anddepth for each of the one or more freight units; and the measurementsystem comprises a depth camera, a scale, and a rangefinder. Range datafrom the rangefinder are used to calibrate the depth camera. Thecomputer system comprises a client computer device; and a host computersystem that is in communication with the client computer device. Thecomputer system is configured to: compute a density for each of the oneor more freight units in the shipment based on the shipping parameters;compute a shipping cost for shipping the shipment with a freight carrierbased on carrier-specific pricing rules for the freight carrier, whereincomputing the shipping cost for the freight carrier comprisesdetermining, based on the carrier-specific pricing rules for the freightcarrier, whether the freight carrier would designate the shipment asdensity-based or class-based for purposes of determining the shippingcost; determine, by the host computer system, an adjustment to theshipping parameters for the shipment that reduces the shipping cost bychanging the density of the one or more freight units, wherein theadjustment comprises an increase in weight, height, width and/or depthof the one or more freight units; and transmit, by the host computersystem to the client computer device, data about the adjustment prior toloading the shipment onto a carrier vehicle.

The one or more goods may be positioned on a pallet. The adjustment tothe shipping parameters for the shipment that reduces the shipping costmay comprise increasing the density of the one or more freight units.The measurement system may further comprise an overhead mounting framethat comprises a plurality of overhead beams; the scale can be locatedunder the plurality of overhead beams; and the depth camera of themeasurement system can comprise four or more downward-pointing depthcameras, wherein each of the four or more downward-pointing depthcameras is mounted on one of the plurality of overhead beams, such thatwhen the one or more freight units is on the scale, the one or morefreight units is within a field of view of each of the four or moredownward-pointing depth cameras. The four or more downward-pointingdepth cameras may comprise an overhead downward-pointing depth cameraand four side downward-pointing depth cameras; the overheaddownward-pointing depth camera can be located directly overhead thescale such that overhead downward-pointing depth camera is directlyoverhead the one or more freight units when the one or more freightunits are on the scale; and each of the four side downward-pointingdepth cameras can each located on a different side of the scale.

The overhead downward-pointing depth camera and the four sidedownward-pointing depth cameras may be at a same height level. Theclient computer device may execute an application to capture bill oflading information of the shipment to trigger the measurement system todetermine the shipping parameters of the shipment. The client computerdevice may comprise a display to display an annotated visualization ofthe one or more freight units, wherein the annotated visualization iscaptured by the depth camera, and wherein the annotated visualizationindicates a confidence level of the determined shipping parameters. Therangefinder may comprise a plurality of rangefinders, and each of theplurality of rangefinders may be a rangefinder selected from the groupconsisting of an optical rangefinder and an acoustic rangefinder. Theplurality of rangefinders may be mounted on one of the plurality ofoverhead beams overhead mounting frame, such that each of the pluralityof rangefinders is adjacent to the overhead downward-pointing camera.The system may comprise a work station located at a site of the overheadmounting frame, wherein the work station communicates with the hostcomputer device and the client computer device via an applicationprogramming interface (API). The workstation may combine point cloudthreads from the four or more downward-pointing depth cameras todetermine a composite point cloud for the one or more freight units; andthe computer system can determine the height, width, and depth based onthe composite point cloud.

In other implementations, the present invention is directed to a methodcomprising: determining, with a measurement system, shipping parametersfor a shipment that comprises one or more freight unit; computing, by acomputer system that comprises a host computer system and a clientcomputer device, a density for each of the one or more freight units inthe shipment based on the shipping parameters; computing, by thecomputer system, a shipping cost for shipping the shipment with afreight carrier based on carrier-specific pricing rules for the freightcarrier; determining, by the computer system, an adjustment to theshipping parameters for the shipment that reduces the shipping cost bychanging the density of the one or more freight units; and transmitting,by the computer system to the client computer device, data about theadjustment prior to loading the shipment onto a carrier vehicle. Each ofthe one or more freight units comprises one or more goods; the shippingparameters comprise a weight, height, width, and depth for each of theone or more freight units; and the measurement system comprises a depthcamera, a scale, and a rangefinder. Range data from the rangefinder areused to calibrate the depth camera. Computing the shipping cost for thefreight carrier comprises determining, based on the carrier-specificpricing rules for the freight carrier, whether the freight carrier woulddesignate the shipment as density-based or class-based for purposes ofdetermining the shipping cost. The determined adjustment comprises anincrease in weight, height, width and/or depth of the one or morefreight units.

A system may comprise the measurement system and computer system and mayfurther comprise a light source to project light towards the depthcamera to calibrate and align the depth camera. The depth camera maycomprise five depth cameras that each generates a point cloud thread.The host computer system may use a tolerance threshold to determine thepoint cloud thread used for determining the shipping parameters. Asignal may be received, by the computer system, from the client computerdevice, to trigger measurement by the measurement system. The one ormore goods may be positioned on a pallet. Changing the density of theone or more freight units by the host computer system may compriseincreasing the density of the one or more freight units. The hostcomputer system may receive a freight metric based on a database profilecorresponding to the shipment. The host computer system may change thedensity of the one or more freight units, based on the received freightmetric.

The examples presented herein are intended to illustrate potential andspecific implementations of the present invention. It can be appreciatedthat the examples are intended primarily for purposes of illustration ofthe invention for those skilled in the art. No particular aspect oraspects of the examples are necessarily intended to limit the scope ofthe present invention. Further, it is to be understood that the figuresand descriptions of the present invention have been simplified toillustrate elements that are relevant for a clear understanding of thepresent invention, while eliminating, for purposes of clarity, otherelements. While various embodiments have been described herein, itshould be apparent that various modifications, alterations, andadaptations to those embodiments may occur to persons skilled in the artwith attainment of at least some of the advantages. The disclosedembodiments are therefore intended to include all such modifications,alterations, and adaptations without departing from the scope of theembodiments as set forth herein.

In summary, numerous benefits have been described which result fromemploying the inventions described herein. The foregoing description ofthe embodiments has been presented for purposes of illustration anddescription. It is not intended to be exhaustive or limiting to theprecise form disclosed. Modifications or variations are possible inlight of the above teachings. The one or more embodiments were chosenand described in order to illustrate principles and practicalapplication to thereby enable one of ordinary skill in the art toutilize the various embodiments and with various modifications as aresuited to the particular use contemplated. It is intended that theclaims submitted herewith define the overall scope.

What is claimed is:
 1. A system comprising: a measurement system for determining shipping parameters of a shipment, wherein: the shipment comprises one or more freight units; each of the one or more freight units comprises one or more goods; the shipping parameters comprise a weight, height, width, and depth for each of the one or more freight units; and the measurement system comprises a depth camera, a scale, and a rangefinder, wherein range data from the rangefinder are used to calibrate the depth camera; a computer system that is in communication with the measurement system, wherein the computer system comprises: a database that stores pricing rules for a plurality of freight carriers; a client computer device; and a host computer system that is in communication with the client computer device and the database, wherein the computer system is configured to: compute a density for each of the one or more freight units in the shipment based on the shipping parameters; compute a shipping cost for shipping the shipment with each of the plurality of freight carriers based on carrier-specific pricing rules, stored in the database, for each of plurality the freight carriers, wherein computing the shipping cost for each of the freight carriers comprises determining, based on the carrier-specific pricing rules for the plurality of freight carriers, whether each of the plurality of freight carriers would designate the shipment as density-based or class-based for purposes of determining the shipping cost; determine, by the host computer system, an adjustment to the shipping parameters for the shipment that reduces the shipping cost for at least one of the plurality of freight carriers by increasing the density of the one or more freight units, wherein the adjustment comprises an increase in at least a weight of the one or more freight units; and transmit, by the host computer system to the client computer device, data about the adjustment prior to loading the shipment onto a carrier vehicle.
 2. The system of claim 1, wherein the one or more goods are positioned on a pallet.
 3. The system of claim 1, wherein the adjustment to the shipping parameters for the shipment that reduces the shipping cost comprises increasing the density of the one or more freight units.
 4. The system of claim 1, wherein: the measurement system further comprises an overhead mounting frame that comprises a plurality of overhead beams; the scale is located under the plurality of overhead beams; and the depth camera of the measurement system comprises four or more downward-pointing depth cameras, wherein each of the four or more downward-pointing depth cameras is mounted on one of the plurality of overhead beams, such that when the one or more freight units is on the scale, the one or more freight units is within a field of view of each of the four or more downward-pointing depth cameras.
 5. The system of claim 4, wherein the measurement system is further configured to recalibrate the scale based on periodic monitoring of measurement system inputs, and wherein the recalibration is triggered based on a non-zero scale reading of the scale and detection that nothing is on the scale.
 6. The system of claim 4, wherein: the four or more downward-pointing depth cameras comprise an overhead downward-pointing depth camera and four side downward-pointing depth cameras; the overhead downward-pointing depth camera is located directly overhead the scale such that overhead downward-pointing depth camera is directly overhead the one or more freight units when the one or more freight units are on the scale; and each of the four side downward-pointing depth cameras are each located on a different side of the scale.
 7. The system of claim 6, wherein the overhead downward-pointing depth camera and the four side downward-pointing depth cameras are at a same height level.
 8. The system of claim 1, wherein the client computer device executes an application to capture bill of lading information of the shipment to trigger the measurement system to determine the shipping parameters of the shipment.
 9. The system of claim 8, wherein the client computer device comprises a display to display an annotated visualization of the one or more freight units, wherein the annotated visualization is captured by the depth camera, and wherein the annotated visualization indicates a confidence level of the determined shipping parameters.
 10. The system of claim 6, wherein the rangefinder comprises a plurality of rangefinders, wherein each of the plurality of rangefinders is a rangefinder selected from the group consisting of an optical rangefinder and an acoustic rangefinder.
 11. The system of claim 10, wherein each of the plurality of rangefinders is mounted on one of the plurality of overhead beams overhead mounting frame, such that each of the plurality of rangefinders is adjacent to the overhead downward-pointing camera.
 12. The system of claim 4, further comprising a work station located at a site of the overhead mounting frame, wherein the work station communicates with the host computer system and the client computer device via an application programming interface (API).
 13. The system of claim 12, wherein: the work station combines point cloud threads from the four or more downward-pointing depth cameras to determine a composite point cloud for the one or more freight units; and the computer system determines the height, width, and depth based on the composite point cloud.
 14. A method comprising: determining, with a measurement system, shipping parameters for a shipment that comprises one or more freight units, wherein: each of the one or more freight units comprises one or more goods; the shipping parameters comprise a weight, height, width, and depth of each of the one or more freight units; the measurement system comprises a depth camera, a scale and a rangefinder; and range data from the rangefinder are used to calibrate the depth camera; and computing, by a computer system that comprises a host computer system, a client computer device, and a database that stores pricing rules for a plurality of freight carriers, and wherein a density for each of the one or more freight units in the shipment based on the shipping parameters; computing, by the computer system, a shipping cost for shipping the shipment with each of the plurality of freight carriers based on carrier-specific pricing rules, stored in the database, for each of plurality the freight carriers, wherein computing the shipping cost for each of the freight carriers comprises determining, based on the carrier-specific pricing rules for the plurality of freight carriers, whether each of the plurality of freight carriers would designate the shipment as density-based or class-based for purposes of determining the shipping cost; determining, by the computer system, an adjustment to the shipping parameters for the shipment that reduces the shipping cost for at least one of the plurality of freight carriers by changing the density of the one or more freight units, wherein the adjustment comprises an increase in weight, height, width and/or depth of the one or more freight units; and transmitting, by the computer system to the client computer device, data about the adjustment prior to loading the shipment onto a carrier vehicle.
 15. The method of claim 14, wherein a system comprising the measurement system and computer system further comprises a light source to project light towards the depth camera to calibrate and align the depth camera.
 16. The method of claim 14, wherein the depth camera comprises five depth cameras that each generates a point cloud thread.
 17. The method of claim 16, wherein the host computer system uses a tolerance threshold to determine the point cloud thread used for determining the shipping parameters.
 18. The method of claim 14, further comprising receiving, by the computer system, a signal from the client computer device to trigger measurement by the measurement system.
 19. The method of claim 14, wherein the one or more goods are positioned on a pallet.
 20. The method of claim 14, wherein changing the density of the one or more freight units by the host computer system comprises increasing the density of the one or more freight units. 